Almost all arithmetic processing devices typified by a current CPU (Central Processing Unit) have architecture referred to as a stored program system. In the stored program system, instruction to be processed by a CPU and data required for the processing are stored in a memory. The processing by the CPU proceeds by sequentially reading out the data in the memory. Therefore, in a system on which a CPU is mounted, a memory access speed is very important to determine performance of the entire system. This is why a cache memory is mounted on many CPUs.
A cache memory is a high-speed memory for copying a part of contents of a main memory (an external memory) in which data is written in/read out at low speed so as to store it. Note that a case where data required for a CPU is in the cache memory is referred to as a cache hit. On the other hand, a case where data required for a CPU is not in the cache memory is referred to as a cache miss. Non-Patent Document 1 can be referred to for information on performance of such a cache memory.
In the case of a cache miss, a low-speed main memory is accessed. Accordingly, the higher a cache hit probability (a cache hit rate) is, that is, the lower a cache miss probability (a cache miss rate) is, the faster a CPU can carry out a processing. That is, in the system on which a CPU is mounted, performance of the entire system can be improved.    [Non-Patent Document 1] J. Hennessy and D. Patterson, “Computer Architecture”, Nikkei Business Publications. Inc, pp. 418-419